package com.example.demo;

import org.springframework.boot.CommandLineRunner;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.Bean;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.Arrays;

@SpringBootApplication
public class DemoApplication {

    public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);
    }

@Bean
    CommandLineRunner init(ApplicationContext ac) {
return args -> {
    System.out.println("HEllo SPring Boot");
    String[] beanNames=ac.getBeanDefinitionNames();
    Arrays.sort(beanNames);
    for(String beanName: beanNames){
        System.out.println(beanName);
    }

};
    }

    @RestController
    class HelloController {
        @RequestMapping("/")
        public String index() {
            return "spring boot!";
        }
    }
}
